[PVFB] Set keyboard layout of PVFB from configuration file.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Mon, 22 Jan 2007 16:27:03 +0000 (16:27 +0000)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Mon, 22 Jan 2007 16:27:03 +0000 (16:27 +0000)
For example:
keymap = "ja"

Default remains en-us.

Signed-off-by: Takanori Kasai <kasai.takanori@jp.fujitsu.com>
Signed-off-by: Tomohiro Takahashi <takatom@tokyo.ssg.fujitsu.com>
Signed-off-by: Masami Watanabe <masami.watanabe@jp.fujitsu.com>
tools/python/xen/xend/server/vfbif.py
tools/python/xen/xm/create.py

index dfa94c2989522ac1988e2be1e350cf94852ff9ae..7bfe850593105e09365cb6794e81a9ff490a48b9 100644 (file)
@@ -14,7 +14,7 @@ def spawn_detached(path, args, env):
         os.waitpid(p, 0)
         
 CONFIG_ENTRIES = ['type', 'vncdisplay', 'vnclisten', 'vncpasswd', 'vncunused',
-                  'display', 'xauthority']
+                  'display', 'xauthority', 'keymap' ]
 
 class VfbifController(DevController):
     """Virtual frame buffer controller. Handles all vfb devices for a domain.
@@ -68,6 +68,8 @@ class VfbifController(DevController):
             vnclisten = config.get("vnclisten",
                                    xen.xend.XendOptions.instance().get_vnclisten_address())
             args += [ "--listen", vnclisten ]
+            if config.has_key("keymap"):
+                args += ["-k", "%s" % config["keymap"]]
             spawn_detached(args[0], args + std_args, os.environ)
         elif t == "sdl":
             args = [xen.util.auxbin.pathTo("xen-sdlfb")]
index e1eb8472e694ce368f13493d2dea18c971843b08..ac90ff177cb190989246e9cb115fcaac215d9ba8 100644 (file)
@@ -594,6 +594,9 @@ def configure_vfbs(config_devs, vals):
                           'xauthority', 'type', 'vncpasswd' ]:
                 err("configuration option %s unknown to vfbs" % k)
             config.append([k,v])
+        for n in iter(dir(vals)):
+            if n == "keymap":
+               config.append(['keymap',vals.keymap])
         if not d.has_key("display") and os.environ.has_key("DISPLAY"):
             config.append(["display", os.environ['DISPLAY']])
         if not d.has_key("xauthority"):